Skip to content

feat: add safer mode to shell toolset for destructive command detection#3216

Draft
dgageot wants to merge 1 commit into
docker:mainfrom
dgageot:safer-shell
Draft

feat: add safer mode to shell toolset for destructive command detection#3216
dgageot wants to merge 1 commit into
docker:mainfrom
dgageot:safer-shell

Conversation

@dgageot

@dgageot dgageot commented Jun 24, 2026

Copy link
Copy Markdown
Member

When safer: true is set on a shell toolset, every shell command is checked against an embedded safety-pattern taxonomy before the normal approval flow. Matched destructive commands surface a blast-radius level in the confirmation UI; unmatched commands still warn with an unknown blast radius. The forced confirmation cannot be bypassed by --yolo or permission allow rules.

Assisted-By: Claude

When safer: true is set on a shell toolset, every shell command is checked
against an embedded safety-pattern taxonomy before the normal approval flow.
Matched destructive commands surface a blast-radius level in the confirmation
UI; unmatched commands still warn with an unknown blast radius. The forced
confirmation cannot be bypassed by --yolo or permission allow rules.

Assisted-By: Claude
@aheritier aheritier added area/tools For features/issues/fixes related to the usage of built-in and MCP tools kind/feat PR adds a new feature (maps to feat: commit prefix) labels Jun 24, 2026

@rumpl rumpl left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be implemented as a hook IMO, no need for the runtime to know that there are "safety" features

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/tools For features/issues/fixes related to the usage of built-in and MCP tools kind/feat PR adds a new feature (maps to feat: commit prefix)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants